<!DOCTYPE html>
<html lang="en">
<head>
    <!--字符解析编码-->
    <meta charset="UTF-8"/>
    <!--媒体识别：自动适配移动端-->
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <!--样式表-->
    <style rel="stylesheet" type="text/css">
        /*去除正文body的内外间距：全屏化*/
        body{margin:0;padding:0;}
        /*地图加载容器的大小：全屏化*/
        #container{
            width: 100%;
            height: 100vh;  /*响应式高度：100%*/
        }
    </style>
</head>
<body>
    <!--容器：用于呈现地图-->
    <div id="container"></div>

    <!--设置全局变量：挂载到当前window窗口对象下-->
    <script type="text/javascript">
        //将密钥设置到全局：后面很多代码都需要的
        //高德地图脚本中，会自动调用的
        window._AMapSecurityConfig = {
            securityJsCode: '678193a57f78f22afa78f397540265c4'//安全密钥
        }
    </script>
<!--加载官方地图脚本：请附加申请的key-->
    <!--加载官方地图脚本：请附加申请的key-->
    <script
            src="https://webapi.amap.com/maps?v=2.0&key=e960c1140d2f3594971b91a30d8c7f50"
            type="text/javascript">
    </script>
    <!--自定义脚本-->
    <script type="text/javascript">

        //默认值执行：
        // -创建一个地图对象，进行初始化，绑定页面容器
        // -创建时会解决地图问题，这里要保存实例，后续要操作的
        var map = new AMap.Map(
            'container',                       //加载地图的容器对象
            {
                zoom: 25,                      //初始化地图的缩放比例
                center: [121.474815,31.237216] //初始化中心点[经度,纬度]
            }
        )

        //当页面加载完毕
        window.onload = function(){
            //问鸿蒙应用要经纬度，通过js代理注入
            //默认通过原型操作，写入window对象中的
            window.swift.setCurrentLocation()
        }

        //定位：提供鸿蒙端调用，
        function setLocation(lng, lat) {
            //设置中心点
            map.setZoomAndCenter(40, [lng,lat])

            //设置中心点标记
            var marker = new AMap.Marker({
                map,
                icon: 'https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png',
                position: [lng,lat]
            })
            //加入到地图中
            map.add(marker)

            //为地图新增插件：搜索
            map.plugin(['AMap.PlaceSearch'], function(){
                //创建搜索功能对象，提供搜索设置
                var MSearch = new AMap.PlaceSearch({
                    map,                //绑定的地图
                    pageSize: 4,        //每页多少条
                    pageIndex: 1,       //第几页：由近到远
                    extensions: 'base'  //扩展：基本
                })
                //为地图设置监听：当搜索结果完成时
                AMap.Event.addListener(MSearch, 'complete', (res)=>{
                    //调用鸿蒙方法，将地址列表回传
                        window.swift.receiveNearPlace(JSON.stringify(res.poiList.pois))
                })
                //执行搜索：会自动标记
                MSearch.searchNearBy('停车场', [lng,lat])
            })
        }
    </script>

</body>
</html>



